package top.infopub.mgr.mkt.service;


import com.github.pagehelper.Page;
import top.infopub.generic.GenericService;
import top.infopub.mgr.common.vo.RspVo;
import top.infopub.mgr.mkt.domain.AfterSummaryDomain;
import top.infopub.mgr.mkt.jsonvo.AfterSummaryJsonVo;
import top.infopub.mgr.mkt.vo.AfterSummaryVo;
import top.infopub.model.mkt.*;
import top.infopub.security.vo.AuthorizationVO;

import java.text.ParseException;
import java.util.List;


public interface AfterSummaryService extends GenericService<AfterSummary, String> {

    /**
     * 根据条件查询标后总结分页数据
     * @param afterSummaryVo
     * @return 
     * @see
     */
    Page<AfterSummaryDomain> selectByDomainWhere(Page<AfterSummaryDomain> page,AfterSummaryVo afterSummaryVo) throws ParseException;

    /**
     * 根据条件查询-我审批的标后总结分页数据
     * @param afterSummaryVo
     * @return 
     * @see
     */
    Page<AfterSummaryDomain> selectMyCheckByDomainWhere(Page<AfterSummaryDomain> page,AfterSummaryVo afterSummaryVo);

    /**
     * 新增
     */
    void saveAfterSummary(AfterSummary afterSummary, List<AfterSummaryBid> afterSummaryBids,
                          List<AfterSummaryCoop> afterSummaryCoops,
                          List<AfterSummaryOur> afterSummaryOurs,
                          List<AfterSummaryRank> afterSummaryRanks,
                          List<AfterSummaryAtt> afterSummaryAtts);

    /**
     * 详情
     */
    AfterSummaryVo queryById(String id);

    /**
     * 根据id查询详情
     * @param id
     * @return
     */
    AfterSummaryJsonVo queryDetailById(String id);

    /**
     * 编辑标后总结详情
     * @return
     */
    RspVo editDetail(AfterSummary afterSummary, List<ProjectAttachment> attachmentList, AuthorizationVO vo, Integer submitType);
}